﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TianShiProject.Models.Common;

namespace TianShiProject.Models.Shen.RecipientShens
{
    public interface IRecipientShenRepository
    {
        /// <summary>
        /// 提交审批
        /// </summary>
        /// <returns></returns>
        Task<int> PostAddRecipient(RecipientShenDto RecipientShenDto, string loginname, int? loginid);
        /// <summary>
        /// 显示审批
        /// </summary>
        /// <param name="title"></param>
        /// <param name="danwei"></param>
        /// <param name="fuzeren"></param>
        /// <param name="jingbanren"></param>
        /// <param name="qianding"></param>
        /// <returns></returns>
        Task<PageResponse<RecipientShenDto>> GetShowRecipient( int? state, string fuzeren, string jingbanren, DateTime? qianding, int pageindex, int pagesize);
        /// <summary>
        /// 待审批显示
        /// </summary>
        /// <param name="title"></param>
        /// <param name="danwei"></param>
        /// <param name="fuzeren"></param>
        /// <param name="jingbanren"></param>
        /// <param name="qianding"></param>
        /// <param name="pageindex"></param>
        /// <param name="pagesize"></param>
        /// <returns></returns>
        Task<PageResponse<RecipientShenDto>> GetDaiRecipient( int? state, string fuzeren, string jingbanren, DateTime? qianding, int pageindex, int pagesize);
        /// <summary>
        /// 已审批显示
        /// </summary>
        /// <param name="title"></param>
        /// <param name="danwei"></param>
        /// <param name="fuzeren"></param>
        /// <param name="jingbanren"></param>
        /// <param name="qianding"></param>
        /// <param name="pageindex"></param>
        /// <param name="pagesize"></param>
        /// <returns></returns>
        Task<PageResponse<RecipientShenDto>> GetYiRecipient( int? state, string fuzeren, string jingbanren, DateTime? qianding, int pageindex, int pagesize);
        /// <summary>
        /// 审批通过
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> PutTongRecipient(Guid id);
        /// <summary>
        /// 审批拒绝
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> PutJuRecipient(Guid id);
    }
}
